<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html>
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
    <title>New Features | Raxan User Guide</title>
    <link href="../raxan/styles/master.css" rel="stylesheet" type="text/css" />
    <!--[if IE]><link rel="stylesheet" href="../raxan/styles/master.ie.css" type="text/css"><![endif]-->
    <link href="style.css" rel="stylesheet" type="text/css" />
    <link href="highlight/styles/default.css" rel="stylesheet" type="text/css" />
    <script type="text/javascript" src="highlight/highlight.js"></script>
    <script type="text/javascript">
        hljs.initHighlightingOnLoad('javascript','html','php');
    </script>

</head>

<body>
    <div class="container c48 prepend-top">
        <h2 class="bottom">Raxan User Guide</h2>
        <div class="navbar">
            <div class="lf"><div class="rt"><div class="md">
                <ul>
                    <li><a href="../index.html" title="The Rich Ajax, CSS &amp; PHP Framework" >Home</a></li>
                    <li><a href="table-of-contents.html" title="Blog Posts" >Table Of Contents</a></li>
                    <li><a href="../php-examples/index.php" title="PHP Examples" >PHP Examples</a></li>
                    <li><a href="../css-examples/index.html" title="User Guide" >CSS Examples</a></li>
                </ul>
            </div></div></div>
        </div>
        <div class="prepend1 append1">
            <div class="ltm" align="right">
                <a href="table-of-contents.html" title="Show Table of Content">
                    <img src="images/toc-button.png"  alt="Table of Contents" />
                </a>
            </div>
            <h2>What's New</h2>

<p>Raxan Beta 3 makes it a lot easier to building rich web applications. In this release we have made a lot of changes to the API to make it easier to build applications and website.</p>

<h3>New Class Names</h3>

<p>We have renamed and added a few new classes and methods in order to make the framework a lot more flexible and extensible:</p>

<ul>
<li>Raxan</li>
<li>RaxanBase</li>
<li>RaxanClientExtension</li>
<li>RaxanClientVariable</li>
<li>RaxanDataSanitizer</li>
<li>RaxanDataStorage</li>
<li>RaxanDateTime</li>
<li>RaxanDOMDocument</li>
<li>RaxanElement</li>
<li>RaxanPDO</li>
<li>RaxanPlugin</li>
<li>RaxanSessionStorage</li>
<li>RaxanSysEvent</li>
<li>RaxanUIElement</li>
<li>RaxanWebPage</li>
<li>RaxanWebPageEvent</li>
<li>RaxanWebPageStorage</li>
</ul>

<p>To use the old class name you can include the raxan/pdi/shared/deprecated.classes.php file inside you application.</p>

<h3>Page Auto-Start</h3>

<p>The new Page Auto-Start feature makes it possible for Raxan to automatically detect and initialize your page class. All you have to do is to include the raxan/pdi/autostart/.php file at the top of your web page:</p>

<pre><code>&lt;?php require_once("raxan/pdi/autostart.php"); ?&gt;

&lt;?php

    class MyWebPage extends RaxanWebPage {
        protected function _load() {
            // some code here
        }
    }

?&gt;
</code></pre>

<p>And if you don't want to use the Auto-Start feature then you can resort to doing things the old way by including the gateway.php file and calling RaxanWebPage::Init('PageClassName');</p>

<h4>Embedded HTML content</h4>

<p>With the Auto-Start feature we have also made it a lot easier for developers to embedded html content inside a web page:</p>

<pre><code>&lt;?php require_once("raxan/pdi/autostart.php"); ?&gt;

&lt;p&gt;You can add HTML your content here!&lt;/p&gt;

&lt;?php

    class MyWebPage extends RaxanWebPage {
        protected function _load() {
            // some code here
        }
    }

?&gt;
</code></pre>

<p>Or include the html content from a separate file:</p>

<pre><code>&lt;?php 

    require_once("raxan/pdi/autostart.php");

    include_once "myhtmlcontent.html";

    class MyWebPage extends RaxanWebPage {
        protected function _load() {
            // some code here
        }
    }

?&gt;
</code></pre>

<h3>Direct Element Access</h3>

<p>Gain quick access to html elements from a web page by using the element's id ($this->elementId):</p>

<pre><code>&lt;?php require_once("raxan/pdi/autostart.php"); ?&gt;

&lt;div id="myid"&gt;&lt;/div&gt;

&lt;?php

    class MyWebPage extends RaxanWebPage {        
        protected function _load() {
            $this-&gt;myid-&gt;text('Hello World');
        }            
    }

?&gt;
</code></pre>

<h3>Inline Event Binding</h3>

<ul>
<li>Less coding required to bind an event to a method on the page</li>
<li>Supports Synchronous and Asynchronous Post Backs</li>
</ul>

<h3>State Management</h3>

<ul>
<li>Preserves element state</li>
<li>State can be Local or Global</li>
</ul>

<h3>Ajax Auto Update</h3>

<ul>
<li>Automatically update modified elements via Ajax callback</li>
<li>Periodically update one or more elements on a web page</li>
</ul>

<p>See <a href="connecting-dots.html#timeout">Timeout Events</a> for more information.</p>

<h3>Master Template</h3>

<ul>
<li>Maintain consistent Look and Feel across pages</li>
<li>Easily change the design of a web page without modifying its content</li>
<li>Build reusable theme for web sites and applications</li>
</ul>

<h3>Other changes</h3>

<ul>
<li>Degradable Web Pages - supports degradable Ajax forms</li>
<li>New event driven Plugin Architecture</li>
<li>New Data Storage API for Page and Session data</li>
<li>Several minor bug fixes</li>
</ul>

<h3>Continue Reading</h3>

<p>To learn more about the framework, visit the <a href="php-overview.html">Raxan for PHP Overview</a> web page</p>

<h3>Release Notes</h3>

<p>For more information on what was change see the <a href="changelog.html">Change Log</a></p>

        </div>
        <div class="tpb pad" style="text-align:right">
            <div class="right ltm">
                <a href="table-of-contents.html" title="Back to Table of Content">
                    <img src="images/toc-button.png"  alt="Table of Contents" />
                </a>
            </div>
        </div>
    </div>
</body>

</html>

